Hyperlink with graphical cue

ABSTRACT

A system, method, and computer program product are provided for causing display of a first set of representations of a first set of hyperlinks. In operation, a first input from a user is received indicating a selection of one of the first set of hyperlink representations and causes, in response to receiving the first input, display of a second set of representations of a second set of hyperlinks. Further, a second input from the user is received indicating a selection of one of the second set of hyperlink representations, and causes, in response to receiving the second input, navigation to a destination specified by the selected one of the second set of hyperlink representations.

RELATED APPLICATIONS

The present application claims priority to and is a continuation of U.S.application Ser. No. 16/056,487 filed Aug. 6, 2018, which in turn is acontinuation of U.S. application Ser. No. 14/224,002 filed Mar. 24,2014, now issued under U.S. Pat. No. 10,042,823, which is a continuationof U.S. application Ser. No. 12/334,068 filed Dec. 12, 2008, now issuedunder U.S. Pat. No. 8,682,961, which is a continuation of U.S.application Ser. No. 11/384,957 filed Mar. 20, 2006, now issued underU.S. Pat. No. 7,529,795, both of which are incorporated herein byreference and which, in turn, incorporate by reference U.S. ProvisionalApplication Ser. No. 60/784,141 filed Mar. 20, 2006 and U.S. ProvisionalApplication Ser. No. 60/784,140 filed Mar. 20, 2006, all of which areincorporated herein by reference.

BACKGROUND Field of the Invention

The present invention relates to computer-implemented techniques forimproving the usefulness of hyperlinks in web pages.

Related Art

Web pages, and other kinds of hypertext documents, use textualrepresentations of hyperlinks to indicate to the user which hyperlinksthe user may follow. For example, if a web page includes the text,“Click here for more information,” the word “here” may be underlined toindicate to the user that selecting (e.g., clicking on) the word “here”will cause the web browser to navigate via a hyperlink to another webpage (referred to as the “anchor” of the hyperlink).

Textual hyperlinks have proven to be extremely useful and powerfultools. In fact, in the first incarnation of the World Wide Web, webpages could only contain text. In such web pages, all hyperlinks werevisually represented using text displayed with a special characteristic(e.g., underlining or a special color) indicating that the textrepresented a hyperlink. Textual representations of hyperlinks have thebenefit, for example, of allowing hyperlinks to be visually embeddedwithin otherwise normal prose text, such as news articles and emailmessages, without visually interrupting the flow of such text.

Textual representations of hyperlinks, however, have certain drawbacks.For example, the textual representation of a hyperlink may not make thedestination (anchor) of the hyperlink clear to the user. In the case ofthe text “Click here for more information,” where the word “here”represents a hyperlink, the text does not convey the destination of thehyperlink to the user. Instead, the user only knows that clicking on theword “here” will cause the web browser to leave the current web page andnavigate to another one. To identify the destination of the web page,the user may be required to navigate to that web page (by selecting thehyperlinked text) and view it, or to perform a cumbersome operation suchas cutting and pasting the URL of the hyperlink into a document. Ineither case, it is tedious and time-consuming for the user to identifythe destination of the hyperlink and therefore to decide whether tonavigate to that destination.

Some have attempted to address these problems with textualrepresentations of hyperlinks by using graphical representations ofhyperlinks. For example, a picture of a person on a web page mayrepresent a hyperlink to that person's home page. Clicking on thepicture will cause the web browser to navigate to the hyperlinked homepage. Graphical hyperlinks have the benefit, in comparison to purelytextual hyperlinks, of providing the user with a clearer indication ofthe hyperlink's destination. On the other hand, graphic images musttypically occupy a significant area on the web page (so-called visual“real estate”) before they can provide enough visual information to beuseful to the user as an indication of the hyperlink's destination.Graphical hyperlinks, therefore, are of limited value in web pages andother situations in which visual real estate is at a premium and must beused as efficiently as possible.

What is needed, therefore, are improved techniques for providing visualrepresentations of hyperlinks.

SUMMARY

A computer program provides a first set of representations (e.g.,textual representations) of a first set of hyperlinks. In response toselection by a user of one of the first set of hyperlink representations(such as by clicking on or hovering a cursor over the representation),the program displays a second set of representations (e.g., graphicalrepresentations) of a second set of hyperlinks. The user may select oneof the second set of representations, in response to which the programnavigates to the destination of the hyperlink. The second set ofrepresentations may, for example, be logos of companies, and the secondset of hyperlinks may be hyperlinks to the companies' web sites.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a dataflow diagram of a message board aggregation systemaccording to one embodiment of the present invention;

FIG. 2 is a flowchart of a method performed by the system of FIG. 1according to one embodiment of the present invention; and

FIG. 3 is a window displayed by the message board aggregation system ofFIG. 1 according to one embodiment of the present invention.

FIGS. 4A-4C are illustrations of a graphical user interface text inputcontrol for use in assisting in the completion of text input by a useraccording to embodiments of the present invention.

FIGS. 5A-5B are illustrations of web page hyperlinks displayed byembodiments of the present invention.

DETAILED DESCRIPTION

Referring to FIG. 1, a dataflow diagram is shown of a message boardaggregation system 100 according to one embodiment of the presentinvention. Referring to FIG. 2, a flowchart is shown of a method 200performed by the system 100 of FIG. 1 according to one embodiment of thepresent invention. Referring to FIG. 3, a window 300 displayed by themessage board aggregation system 100 of FIG. 1 is illustrated accordingto one embodiment of the present invention.

In general, the window 300 shown in FIG. 3 contemporaneously displays atable 302 containing message table content (e.g., message title, messageauthor, message ID, message sentiment, message time of writing, messageweb page source, person being replied to) and message content 304corresponding to a message represented by one of the entries in themessage table 302. In the embodiment illustrated in FIG. 3, the messagecontent 304 is displayed in a web page 306 from a message board web siteto which the message content 304 was originally posted. In theembodiment illustrated in FIG. 3, the source web page 306 (containingthe message content 304) is displayed in a first frame 308 of the webpage 300, and the message table 302 is displayed in a second frame 310of the web page 300.

The web page 306 is an example of a “source” web page as that term isused herein. The message table 302 may include summaries of messagesoriginally posted to more than one source web page. The web page 300,therefore, provides an aggregation service which aggregates messagesfrom a plurality of web-based message boards. The web page 300,therefore, is referred to herein as an “aggregation” web page.

Having described certain general features of particular embodiments ofthe present invention, techniques that may be used to implementembodiments of the present invention will now be disclosed. Referring toFIG. 1, multiple external message boards 102 a-m are illustrated. Forease of illustration and explanation, each of the message boards 102 a-mis illustrated simply as a set of messages. More specifically, messageboard 102 a includes a set of messages 104 a, including messages 106a-n; message board 102 b includes a set of messages 104 b, includingmessages 108 a-n; and message board 102 m includes a set of messages 104m, including messages 110 a-n. In practice, the message boards 102 a-mmay be implemented using web servers or any other appropriate kind oftechnology.

Furthermore, although only three external message boards 102 a, 102 b,and 102 m are shown in FIG. 1 for purposes of example, the system 100may include and/or access any number of external message boards, asindicated by the variable m. Furthermore, the term “message board” isnot limited to any-particular kind of communications mechanism, andincludes not only web-based message boards, but also newsgroups andemail. Although each of the message boards 102 a-m is shown in FIG. 1 asincluding the same number of messages n, the number of messages may varyamong the message boards 102 a-m.

A single message board, such as a web-based financial message board, mayinclude a plurality of topics, each of which may include a plurality ofthreads or sub-topics. For ease of illustration and explanation, each ofthe message boards 102 a-m is illustrated in FIG. 1 as containing only asingle thread of messages. This does not represent a limitation of thepresent invention. Rather, the techniques disclosed herein may beapplied to message boards including any number of topics, threads, orother groupings of messages.

The aggregation system 100 also includes a message board aggregationserver 112 and a corresponding message board 114 (which includes set 116of messages 118 a-n). The message board 114 is managed by theaggregation server 112 or by the same entity that manages theaggregation server. Therefore, the message board 114 will be referred toherein as an “internal” message board, while the message boards 102 a-mwill be referred to herein as “external” message boards in relation tothe aggregation server 112. As will be described in more detail below,the aggregation server 112 aggregates messages from two or more of themessage boards 102 a-m and 114, and displays content from the aggregatedmessages in the web page 300.

Referring again to FIG. 2, the system 100 of FIG. 1 may perform themethod 200 to aggregate content from the message boards 102 a-m and 114to display aggregated message content in the window 300. A user 142 usesa web browser 140 to browse over the Internet 138 to a web site servedby the aggregation server 112. The web page 300 is an example of a webpage that may be part of such a web site. Upon visiting the web site,the user 142 selects one or more source message boards from which toview message content and summaries (step 202). The user 142 may, forexample, make this selection by selecting the name of an externalmessage board (such as one of the external message boards 102 a-m) froma selection of sources accessible in any of a variety of formats, oneexample of which is a drop-down list 316. Note, however, that the user142 may select more than one source message board.

In the particular example illustrated in FIG. 3, the web page 300combines content extracted from the single external message boardindicated by the selection in the drop-down list 316 with contentextracted from the internal message board 114 associated with theaggregation server 112. Furthermore, in the example illustrated in FIG.3, the user 142 may use drop-down list 318 to select the number ofmessage summaries to be displayed in message table 302.

The user 142 selects other input parameters (such as the number ofmessages to be retrieved) (step 203). As described in more detail below,the aggregation server 112 may store the other input parameters in a setof other preferences 126.

The user 142 selects a particular message board topic to view (step204). The user 142 may, for example, make this selection by identifyinga particular company, such as by typing the company's name or stockticker symbol in text field 312 and clicking button 314. This is onlyone of many ways in which the user may select a message board topic toview.

Furthermore, in the embodiment illustrated in FIG. 3, the web page 300also includes a directory (forum) 334 user interface control which may,for example, take the form of a drop-down list. For example, thedirectory control 334 may allow the user to select either a “stock”forum or a “sports” forum. If the user 142 selects the “stock” forum,then the web page 300 may enable selection of stock symbols in textfield 312, while if the user 142 selects the “sports” forum, then theweb page 300 may enable selection of sports symbols in text field 312.More generally, the user's selection in the directory control 334dictates which group of symbols is available for selection in the textinput field 312. The use of the directory control 334 is provided merelyfor purposes of example and does not constitute a limitation of thepresent invention.

The user's message board selection is transmitted by the web browser 140over the Internet 138 to the message board aggregation server 112. Inresponse to receiving the user's selection, the aggregation server 112retrieves information derived from messages in the selected sourcemessage board(s) having the selected topic (step 206). In the embodimentillustrated in FIG. 3, the aggregation server 112 also retrieves messagecontent from the internal message board 114. This is not, however, arequirement of the present invention. The internal message board 114may, for example, be selectable or de-selectable as a source by the user142 in the same manner as the external message boards 102 a-m.

Note further that any subset of the external message boards 102 a-m maybe selectable as a source by the user 142. Such a subset may, forexample, consist of all of the external message boards 102 a-m, any oneof the message boards 102 a-m, or any combination of fewer than all ofthe message boards 102 a-m.

The information extracted from the selected source message board(s) bythe aggregation server may include any of a variety of information thatmay be of interest to the user 142. Examples of information that may beextracted from each on-topic message in the selected message board(s)includes, but is not limited to the message title, author, ID,sentiment, time of writing, web page source, person being replied to,and message statistics (e.g., the number of times others haverecommended the message, or a rating of the popularity of the message).

At any time during performance of the method 200 illustrated in FIG. 2,the user 142 may select one or more fields to be displayed in themessage table 302 (step 208). For example, in the embodiment illustratedin FIG. 3, the message table includes a column 322 a labeled “MessageTitles,” which always displays the titles of the messages summarized inthe table 302. The table 302 also includes, however, a second column 322b having content that may-be varied by the user 142. More specifically,the user 142 may select link 320 a to cause the column 322 b to displaythe authors of the messages being summarized in the table 302 (asillustrated in FIG. 3). Similarly, the user 142 may select link 320 b tocause the column 322 b to display the times at which the messages beingsummarized in the table 302 were posted.

The particular selection of fields allowed in the embodiment illustratedin FIG. 3 is merely an example and does not constitute a limitation ofthe present invention. Rather, the user 142 may be allowed to select anycombination of message fields for display in the table 302. Otherexamples of two fields from which the user 142 may select include, butare not limited to: message Title and Author fields; message Title andTime Submitted fields; and message Author and Author Attribute fields.Furthermore, a single column in the table 302 may display content frommore than one field. For example, a single “time and author” column maysimultaneously display both message time and author.

At any time during performance of the method 200 illustrated in FIG. 2,the user 142 may select an order in which message summaries are to besorted in the message table 302 (step 210). For example, in theembodiment illustrated in FIG. 3, the user 142 may select the heading ofcolumn 322 a to cause the contents of the table 302 to be sorted bymessage title, or select the heading of column 322 b to cause thecontents of the table 302 to be sorted by the contents of column 322 b(e.g., message author or posting time). Alternatively, for example, thecontents of the table 302 may be sorted automatically by posting time.Once again, these particular sorting options are merely examples and donot constitute limitations of the present invention.

The aggregation server 112 keeps track of: (1) the source messageboard(s) selected by the user 142 in source selections 1-20; (2) thetopic (e.g., company) selected by the user 142 in topic selection 121;(3) the field(s) selected by the user 142 in field selections 122; (4)the sort order 124 selected by the user 142 in sort order 124; and (5)any other preferences 126 specified by the user 142.

The aggregation server 112 includes an aggregation engine 128, whichgenerates message content units 132 based on the information extractedin step 206 and the user preferences described above (step 212). Forexample, the message content units 132 may include a content unit foreach message that matches the topic selection 121 (e.g., company) in anyof the source message board(s) indicated by the source selection(s) 120.Each of the message content units 132 may include information only forthe fields specified by the field selections 122, but this is notrequired. The message content units 132 may, for example, includeextracted information for fields other than those specified by the fieldselections. The message content units 132 may include all of theinformation that was extracted in step 206.

As will be described in more detail below, the information in themessage content units 132 forms the basis for the information displayedin the message table 302 on the web page 300 (FIG. 3). In the embodimentillustrated in FIG. 3, the frame 308 displays a web page 308corresponding to one of the message summaries displayed in the messagetable 302. When the web page 300 is first displayed, the message contentcorresponding to the first message summary in the table 302 may bedisplayed by default in the frame 308. Thereafter, the user 142 mayselect any of the message summaries in the table 302, such as byclicking on the title of the message in column 322 a, to cause messagecontent for a different message to be displayed-in the frame 308.

The aggregation engine 128, therefore, provides message content 130corresponding to the currently-selected message summary in the messagetable 302 (step 214). The aggregation engine 128 may, for example,provide the content 130 in the form of HTML and/or other web content bycopying the content 130 from its source message board (e.g., one of theexternal message boards 102 a-m or the internal message board 114). Thecontent 130 may either be copied to a storage medium local to theaggregation server 112, or merely passed as a reference to the clientweb browser 140, which may retrieve the message content 130 directlyfrom its source and display it in the frame 308, without using theaggregation server 112 to serve the content 130 to the user 142.

The aggregation server 112 includes a web page generator 134, whichproduces an aggregated web page 136 (including HTML and/or other webcontent) that includes both the message content units 132 and themessage content 130 (or a link to the message content 130) (step 216).

The aggregated web page 136 may, for example, include a first frame fordisplaying a table including information from the message content units132, and a second frame for displaying the message content 130.

The aggregation server 112 transmits the aggregated web page 136 to theweb browser 140 over the Internet (step 218). The web browser 140displays a window (such as the window 300 shown in FIG. 3) including:(1) web content (such as the web page 306) representing a first messageposted to a first online forum, such as the external message board 102a; and (2) a plurality of message summaries (such as are displayed inthe table 302) including information derived from the first message(such as the message summary 324 of the message 304) and secondinformation derived from a second message in the plurality of messages(such as the message summary 326 of another message not displayed in thewindow 300). The web content and the message summaries may be displayedin different frames in the same window.

As described above, the message content units 132 that are downloaded bythe web browser 140 to the local machine of the user 142 may includemore information than is displayed in the table 302. The table 302 may,for example, be designed to display only the information that isconsidered most important to the user 142, such as the title, author,and/or timestamp of the aggregated messages. The user 142 may, however,read a particular one of the message summaries in the table 302 anddesire to obtain additional information about the corresponding message.Although the user 142 could obtain such additional information byclicking on the message summary, thereby causing the correspondingmessage web content to be displayed in the frame 308, this requires theweb browser 140 to download and render additional web content. Acquiringadditional information about many messages in this way may therefore betedious and time-consuming.

Alternatively, the web page 300 allows the user 142 to quickly obtainadditional summary information about any message listed in the table 302by, for example, moving and holding (“hovering”) the mouse cursor overthe message's summary. For example, in the case illustrated in FIG. 3,the user 142 has hovered the mouse cursor over message summary 324,thereby causing the web page 300 to display a tooltip 328 containingadditional summary information about the source message 304. In theexample illustrated in FIG. 3, the tooltip 328 includes additionalinformation such as the message ID, author, sentiment, date and time,and the beginning of the message text.

Because the additional summary information has been preloaded by the webbrowser 140 in the process of downloading the message content units 132from the aggregation server 112, the web browser 140 may generate anddisplay the tooltip essentially instantaneously, and without againaccessing the server 112. This allows the user 142 to quickly browsesuch additional information for many messages listed in the table 302quickly and easily, simply by moving the mouse cursor over thecorresponding message summaries.

The aggregation of messages from multiple message boards at multipleURLs into a single rich web page, including content initially is hiddenand that may be displayed essentially instantaneously by the web browserclient 140 without the need to make an additional access to the server112, is made convenient by the increasing availability of broadbandconnectivity to users. Such broadband connectivity increasingly isavailable not only through wired networks at home and in the workplacebut also through wireless networks accessible using mobile computingdevices. By making it feasible for the client web browser 140 todownload content-rich web pages without causing the user 142 to incur asignificant delay before the web page is displayed, broadbandconnections allow the web browser 140 to provide a degree ofinteractivity in web pages that approaches or even matches thatpreviously available only in client-side applications.

Note that the use of a tooltip is provided merely as an example and doesnot constitute a limitation of the present invention. Rather, theadditional summary information may be provided in other forms, such asin a static object (e.g., a text box) on the web page 300. Furthermore,the user 142 may cause the additional summary information to bedisplayed using actions other than hovering, such as clicking orpressing a hotkey.

The tooltip, or other graphical user interface element that is used todisplay additional summary information, may be variable in size. Forexample, the web page 300 may allow the user 142 to select from amongthree sizes: small, large, and very large. The very large size may beparticularly useful for users who are visually impaired. Such a featuremay make it possible for visually impaired users to benefit from thefeatures of the web page 300, without requiring the design of the webpage (e.g., the font size of text in the table) to change.

Furthermore, the web page 300 may be implemented such that selecting(e.g., hovering or clicking) one of the message summaries in the table302 always causes the corresponding message to be displayed in the frame308, while the additional summary information (e.g., tooltip) isdisplayed. Although there may be some delay in loading and displayingthe full message in the frame 308, the user 142 may view the additionalsummary information essentially immediately, thereby enabling the user142 to decide quickly whether to wait for the remainder of the messageto load or to move on to the next message summary.

The web page 300 may allow the user 142 to post additional messages toany-of the source message boards. For example, in the embodimentillustrated in FIG. 3, the web page 300 includes an “Add Message” button330 that the user 142 may click to add a new message. When the user 142clicks the button 330, a web page may be displayed which allows the user142 to type a new message and submit it either to the internal messageboard 114 or to one of the external message boards 102 a-m. In eithercase, once the user 142 has posted a new message, the message may bedisplayed in the frame 308, and a summary of the message may bedisplayed in the table 302.

Similarly, the web page 300 may include a “Reply Message” button (notshown in FIG. 3) that the user 142 may click to reply to the messagecurrently being shown in the frame 308. When the user 142 submits areply, the reply may be posted to the same message board as the messageto which the user 142 has replied, whether that message board isexternal or internal to the aggregation server 112. Alternatively, theuser 142 may be allowed to choose whether to reply from the internalmessage board 114 maintained by the aggregation server 112 or from theexternal message board currently displayed in the frame 308.

Message summaries in the message table 302 may be sorted in any manner.For example, the summaries may be sorted by time of posting by default.The user 142 may, however, sort these messages in other ways (e.g., bymessage title, message author, message ID, message sentiment, messageweb page source, person being replied to). If the message table 302includes message summaries derived from multiple source message boards,the message table 302 may nonetheless display the summaries in anaggregated sorted list. For example, the summaries may be sorted by timeof posting, in which case message summaries corresponding to messagesfrom different source message boards may be interwoven with each otheraccording to the times at which they were posted. This feature providesthe user 142 with a unified view of messages across multiple messageboards.

Among the advantages of the invention are one or more of the following.The features of the web page 300 illustrated in FIG. 3 provide animprovement in speed and ease of use when accessing message tablecontent and corresponding message content, in comparison to conventionalsystems for performing such functions. In particular, the web page 300both allows the user 142 to view a message summary and correspondingmessage content contemporaneously, and to quickly scan additionalmessage summary information not contained in the table 302.

Furthermore, the techniques disclosed herein make it possible to readand write messages from and to multiple message board sources. Writingmessages can be performed either from the web page 300, or at theoriginal message board source in the frame 308. This saves the user 142time in comparison to reading and writing multiple message boards usingdistinct web browser windows for each message board.

By providing features that are attractive and useful to frequent usersof financial message boards, the techniques disclosed herein provide anopportunity to generate significant revenue from advertising. An exampleof a banner advertisement 332 for a financial services firm is shown onthe web page 300 in FIG. 3. Note, however, that the web page 300 (andthe web site of which it is a part) may generate revenue using anymechanism, not merely banner advertisements.

Furthermore, note that content other than an advertisement may occupythe space occupied by the advertisement 332 in FIG. 3. For example, theaggregation server 112 may display an advertisement for basic (i.e.,non-paid) users, but display additional summary information (such as theinformation displayed by the tooltip 328 in FIG. 3) in a static object(such as a text box) in the same location as but instead of theadvertisement 332 for premium (i.e., paid) users. The web page 300, inother words, may be designed to make efficient use of available screen“real estate” to tailor the content that is displayed in an attempt tomaximize revenue.

It is to be understood that although the invention has been describedabove in terms of particular embodiments, the foregoing embodiments areprovided as illustrative only, and do not limit or define the scope ofthe invention. Various other embodiments, including but not limited tothe following, are also within the scope of the claims. For example,elements and components described herein may be further divided intoadditional components or joined together to form fewer components forperforming the same functions. In particular, the functions performed bythe aggregation server 112 shown in FIG. 1 may be further subdividedinto additional components for performing the same functions.

Although certain examples disclosed herein relate to financial messageboards, the present invention is not limited to such examples. Moregenerally, the techniques disclosed herein may be applied to any kind ofmessaging system, such as email and newsgroups, and to messaging systemscontaining messages whose content does not relate to finance.Furthermore, the techniques disclosed herein may be applied to aggregatecontent from web sites and other communications systems that are notdesigned as message boards. For example, the techniques disclosed hereinmay be used to aggregate news articles posted to news web sites, such asthe web site for the New York Times (www.nytimes.com) or the BusinessWeek (www.businessweek.com), even though such web sites are not designedas message boards to which members of the public may post messages. Theterm “message, as used herein, therefore, includes not only messagesposted to message boards, but more generally to any unit ofcommunication, such as an email message, a newsgroup posting, or a newsarticle posted by an administrator to a news web site.

As described above, the aggregation server 112 extracts certaininformation from source message boards to produce the message contentunits 132. Examples of categories from which information may be derivedinclude, but are not limited to: message title, message author, messageidentifier, message sentiment, message timestamp, message web address,message thread, message attribute (e.g., size), message link (linkscontained in the message), message keyword (keywords contained in themessage), message recipient, and message statistics (e.g., the number oftimes others have recommended the message, or a rating of the popularityof the message). The user 142 may be allowed to sort the aggregatedmessage summaries displayed in the message table 302 by, for example,any of the categories mentioned above.

Ease of visual cognition is key to a successful user interface. Varioustechniques may be combined with those described above to improve suchease of visual cognition. For example, message summaries in the table302 may be color-coded or otherwise coded (such as by the use ofdistinct icons or words) according to their source or to any otherattribute, such as according to any of the categories mentioned above.The table 302 may include any number of rows and columns. Columns may beassigned to message categories (attributes) in any way. For example, asingle column may correspond to a single attribute or to multipleattributes. For example, in one embodiment, there are two columns: (1)title and (2) time and author.

The web browser 140 is not limited to any particular web browserapplication. The web browser 140 may, for example, be of any kind andoperate on any kind of device (e.g., desktop computer, laptop computer,personal-digital assistant, or smart phone). Furthermore, although thenetwork 138 in FIG. 1 is labeled as the “Internet,” the web browser 140and aggregation server 112 may communicate over any kind of network,such as a private intranet.

The techniques described above may be implemented, for example, inhardware, software, firmware, or any combination thereof. The techniquesdescribed above may be implemented in one or more computer programsexecuting on a programmable computer including a processor, a storagemedium readable by the processor (including, for example, volatile andnon-volatile memory and/or storage elements), at least one input device,and at least one output device. Program code may be applied to inputentered using the input device to perform the functions described and togenerate output. The output may be provided to one or more outputdevices.

Each computer program within the scope of the claims below may beimplemented in any programming language, such as assembly language,machine language, a high-level procedural programming language, or anobject-oriented programming language. The programming language may, forexample, be a compiled or interpreted programming language.

Each such computer program may be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a computer processor. Method steps of the invention may beperformed by a computer processor executing a program tangibly embodiedon a computer-readable medium to perform functions of the invention byoperating on input and generating output. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, the processor receives instructions and data from a read-onlymemory and/or a random access memory. Storage devices suitable fortangibly embodying computer program instructions include, for example,all forms of non-volatile memory, such as semiconductor memory devices,including EPROM, EEPROM, and flash memory devices; magnetic disks suchas internal hard disks and removable disks; magneto-optical disks; andCD-ROMs. Any of the foregoing may be supplemented by, or incorporatedin, specially-designed ASICs (application-specific integrated circuits)or FPGAs (Field-Programmable Gate Arrays). A computer can generally alsoreceive programs and data from a storage medium such as an internal disk(not shown) or a removable disk. These elements will also be found in aconventional desktop or workstation computer as well as other computerssuitable for executing computer programs implementing the methodsdescribed herein, which may be used in conjunction with any digitalprint engine or marking engine, display monitor, or other raster outputdevice capable of producing color or gray scale pixels on paper, film,display screen, or other output medium.

Referring to FIG. 4A, an illustration is shown of a graphical userinterface text input control 400 for use in assisting in the completionof text input by a user according to one embodiment of the presentinvention. The control 400 includes a text input field 402 into whichthe user may type text.

In the particular embodiment illustrated in FIG. 4A, the text inputfield 402 is used for entering either the name of a company or the stockticker symbol of the company. The text input field 402 may, for example,be implemented in a financial message board aggregation web site of thekind described in the above-referenced patent application entitled“Message Aggregator”, now issued under U.S. Pat. No. 7,529,795. The textinput field 402, however, may be used for entering text of any kind, andis not limited to use in any particular kind of computer program (suchas a web browser).

For purposes of the following discussion, however, assume that the textinput field 402 is used to enter either the name of a company or thestock ticker symbol of the company. The program that provides the textinput field 402 may maintain a list of ticker-name tuples. For example,one tuple may include the stock ticker symbol “AAP” and the name of thecompany having that stock ticker symbol, namely “Advance Auto PartsInc.” Another tuple may, for example, include the stock ticker symbol“AAPH” and the name of the company having that stock ticker symbol,namely “American Petro-Hunter Inc.” Yet another tuple may, for example,include the stock ticker symbol “AAPL” and the name of the companyhaving that stock ticker symbol, namely “Apple Computer Inc.”

In the particular example illustrated in FIG. 4A, the user has begun totype the text “aap”. As the user types, the program that provides thetext input field 402 may attempt to match the text that the user hastyped so far against any of the text in the tuples maintained by theprogram. For example, the program may attempt to match the text typed bythe user so far against both the stored list of stock ticker symbols andthe list of corresponding company names.

If the program determines that the text typed by the user so far matchesany of the text in a particular tuple, the program may indicate such amatch to the user. For example, if the program determines that the texttyped by the user so far matches either the stock ticker symbol or thecompany name of a particular tuple, the program may indicate to the userthat a match has been found. If matches are found with text in multipletuples, the program may indicate to the user that multiple matches havebeen found.

In the particular embodiment illustrated in FIG. 4A, any matches areindicated to the user by displaying a list of matching tuples,consisting of the stock ticker name followed by the company name (inparenthesis) of each matching tuple. For example, in FIG. 4A, the texttyped so far by the user (“aap”) matches three stock ticker symbols(“AAP”, “AAPH”, and “AAPL”). The program therefore displays the text 408a-c of the three matching tuples in the list 406 a. It should beappreciated that the contents of the list may change as the usercontinues to type additional characters in the text input field 402 oras the user deletes previously-typed characters in the text input field402.

Furthermore, the subset of each text item in the list that matches theinput text may be visually emphasized. For example, in FIG. 4A, the text“AAP” may be highlighted (such as by color coding) in each of thematching text strings 408 a, 408 b, and 408 c. Highlighting the matchingtext in this way enables the user to quickly recognize the basis of eachmatch, thereby enabling the user to quickly determine whether any of thedisplayed text strings 408 a-c corresponds to the company for which theuser was searching.

In the particular example illustrated in FIG. 4A, the text 404 a typedby the user in the text input field 402 only matches stock tickersymbols in the set of stored tuples. Referring to FIG. 4B, an example isillustrated in which the text 404 b (“appl”) typed by the user matchescompany names (e.g., “Apple Computer Inc.”, “Applied Biosystems Group”,and “Applied Digital Solutions”) instead of stock ticker symbols. Thelist 406 b displayed in FIG. 4B, therefore, includes text 410 a-jcorresponding to tuples having company names that match the typed text404 b. Although the list 406 b is sorted by stock ticker symbol, thelist 406 b may be organized in any manner. For example, the list 406 bmay be sorted by company name. Note that the list 406 b displayed inFIG. 4B may be generated dynamically while the user types the text 404 bin the same manner as described above with respect to the list 406 a ofFIG. 4A, namely by attempting to match the text 404 b against both stockticker symbols and company names.

Referring to FIG. 4C, an example is illustrated in which the text 404 c(“del”) typed by the user matches both ticker symbols (i.e., “DEL”,“DELL”, and “DELT”) and company names (i.e., “Delcath Systems Inc.”,“Delta Capital Technologies Inc.”, “deltathree Inc.”, “Delhaize Group(ADR)”, “Delta Financial Corp.”, and “Delphi Financial Group Inc.”). Thelist 406 c displayed in FIG. 4C, therefore, includes both text 412 a-ccorresponding to tuples having ticker symbols that match the typed text404 c and text 412 d-j having company names that match the typed text404 c.

Although the list 406 c includes two sections—one for matching tickersymbols and one for matching company names—the list may be organized inany manner. For example, the list 406 c may be a single list sorted bycompany name or ticker symbol.

Once a list of matching tuples has been displayed (such as any of thelists 406 a-c illustrated in FIGS. 4A-4C), the program may allow theuser to select a tuple from the list to complete the text being typed inthe text input field 402. For example, if the user clicks on an item inthe list, the program may fill in the text field 402 with the stockticker symbol of the tuple selected by the user. Note, however, thatwhen the user selects a tuple from the list, the program may fill in thetext field 402 with a stock ticker symbol even though the user had begunto type a company name, or vice versa. The user may also select morethan one of the output strings by using the shift or control key whileselecting a subset of the desired output strings.

The techniques disclosed herein may be used to reduce the number ofkeystrokes required to be input by the user. This may save the usereffort and enable the user to use the corresponding computer programmore quickly. For example, in comparison, conventional financial portalweb sites typically provide a “symbol lookup” feature that allows a userto find the stock ticker symbol for a company by typing the company'sname, and then clicking on a “find” button.

Examples of existing financial portal web sites, some of which providesome form of “symbol lookup” feature, but which do not include the kindof lookup features disclosed herein, include:http://moneycentral.msn.com/investor/common/find.asp?NextPage=/detail/sto-ckquote, http://finance.yahoo.com/lookup,http://money.cnn.com/quote/lookup/index.html,http://www.marketwatch.com/tools/quotes/lookup.asp,http://clearstation.etrade.com/cgi-bin/symbol search,http://www.marketcenter.com/std/search.action,http://www.marketcenter.com/std/toolbox.jsp,http://www.quote.com/qc/lookup/symbol search.aspx,http://www.wallstreettape.com/charts/custom/symbol-lookup.asp,http://online.wsj.com/public/us, http://online.barrons.com/public/main,http://bigcharts.marketwatch.com/symbollookup/symbollookup.asp,http://www.esignalcentral.com/support/symbol/default.asp,http://www.hoovers.com/free/, http://www.bloomberg.com/apps/tkrlookup,http://www2.barchart.com/lookup.asp, http://stockcharts.com/index.html,http://tools.thestreet.com/tsc/quotes.html?pg=qcn&,http://www.earningswhispers.com/tickerlookup.asp,http://www.whispernumber.com/index.jsp, http://www.google.com,http://quote.morningstar.com/TickerLookup.html, http://www.fool.com,http://www.siliconinvestor.com, http://www.investorshub.com,http://www.ragingbull.com, http://www.boardcentral.com,http://www.briefing.com/, http://www.newyorktimes.com,http://www.washingtonpost.com, http://www.boston.com, http://www.ft.com,http://news.bbc.co.uk/, http://www.inc.com, http://www.forbes.com,http://www.fortune.com,http://research.businessweek.com/ticker/create_ticker.asp,http://www.etrade.com, http://www.ameritrade.com, http://www.schwab.com,http://www.scottrade.com, http://www.sharebuilder.com, andhttp://www.vanguard.com, http://seekingalpha.com/,http://portfolios.abcnews.go.com/guotes/getQuote,http://www.investorvillage.com/home.asp,http://www.tickertech.com/cgi/?a=lookup,http://www.investors.com/symbol.asp,http://www.cboe.com/DelayedQuote/Symbol.aspx,http://personal.fidelity.com/research/stocks/content/stocksindex.shtml?bar=c, http://www.quicken.com/investments/tsl/,http://www.globeinvestor.com/static/hubs/lookup.html,http://www.usatoday.com/money/search-tips.htm, http://stockhouse.com/,http://www.thelion.com/, http://www.island.com/, http://www.zacks.com/,http://www.troweprice.com/common/indexHtml3/0,0,htmlid=38,00.html,http://www.amex.com/?href=/quickquote/SymbolLookup.jsp,http://www.nasdaq.com, http://www.nyse.com/,http://www.londonstockexchange.com/en-gb/, http://www.euronext.com,http://www.tsx.com/, http://www.asx.com.au/, http://www.advfn.com,http://www.mldirect.ml.com, http://www.foxnews.com/business/index.html,http://www.quickandreilly.com/, http://www.economist.com/index.html,http://www.kiplinger.com/, http://www.pennystock.com/,http://www.wallstreetselect.com/, http://www.sec.gov/edgar.shtml,http://www.edgar-online.com/, http://freeedgar.com/,http://www.thedeal.com, http://www.investools.com,http://www.activetradermag.com/, http://www.traders.com/, andhttp://www.ipohome.com.

The techniques disclosed herein may also provide the user with abeneficial degree of flexibility. For example, the techniques disclosedherein provide the user with the flexibility to type either a stockticker symbol or a company name, depending on the user's preference, ordepending on which of the two the user remembers most easily. The user,therefore, is not limited to a particular mode of input dictated by theprogram. This may make the program easily usable by different classes ofusers, such as both those users who are sophisticated stock traders (andtherefore likely to remember stock ticker symbols) and lesssophisticated users (who are likely to remember company names ratherthan symbols). More generally, the techniques disclosed herein reducethe need for the user to rely on his memory to provide necessary textualinput.

It is to be understood that although the invention has been describedabove in terms of particular embodiments, the foregoing embodiments areprovided as illustrative only, and do not limit or define the scope ofthe invention. Various other embodiments, including but not limited tothe following, are also within the scope of the claims. For example,elements and components described herein may be further divided intoadditional components or joined together to form fewer components forperforming the same functions.

Although certain examples described herein use stock ticker symbol andcompany name as the categories of text strings stored in n-tuples, thetechniques disclosed herein may be applied to text strings representingany categories of content. For example, company sector (or other meansof categorizing a company) is another example of a category of contentto which the techniques disclosed herein may be applied.

Although particular examples disclosed herein involve the use of pairsof text strings, such pairs are merely special cases of n-tuples, inwhich n=2. The techniques disclosed herein may be applied moregenerally, to n-tuples where n>1. Furthermore, the text in the tuplesmay be of any kind and have any relationship to each other. For example,although stock ticker symbols typically have some textual similarity tothe corresponding company names, this is not required. For example, ann-tuple may include a person's name and the person's street address, inwhich case there may be no textual similarity between the various textstrings in the n-tuple.

In certain examples disclosed herein, the text typed by the user ismatched against the beginning (leading characters) of text in then-tuples. This is not, however, a requirement of the present invention.Rather, matching may be performed by comparing any subset of the texttyped by the user against any subset of the n-tuple text. Furthermore,matching need not be performed against all elements in an n-tuple, or inthe same manner against all elements in an n-tuple. For example, if n=3,matching may be performed against two rather than three of the textstrings in the n-tuple. Although certain examples disclosed hereinprovide the user with an indication of matches by displaying a list ofall text in matching n-tuples, this is not a requirement of the presentinvention. Rather, matches may be displayed in a form other than a list.Furthermore, displayed matches need not display all of the text inmatching tuples. The user may be allowed to select a matching tupleusing any kind of input mechanism.

Any kind of computer program may implement the techniques disclosedherein. For example, the techniques disclosed herein may be implementedin a web site displayed by a web browser.

Although the concept of an n-tuple is used herein, the techniquesdisclosed herein may be implemented without storing data in structuresorganized as n-tuples. Rather, the techniques disclosed herein may beimplemented using any kind of data structure, such as linked lists. Thedata against which the user input is matched may be pre-stored,downloaded over a network connection, generated on-the-fly, or produced,stored, and processed in any suitable manner.

The techniques described above may be implemented, for example, inhardware, software, firmware, or any combination thereof. The techniquesdescribed above may be implemented in one or more computer programsexecuting on a programmable computer including a processor, a storagemedium readable by the processor (including, for example, volatile andnon-volatile memory and/or storage elements), at least one input device,and at least one output device. Program code may be applied to inputentered using the input device to perform the functions described and togenerate output. The output may be provided to one or more outputdevices.

Each computer program within the scope of the claims below may beimplemented in any programming language, such as assembly language,machine language, a high-level procedural programming language, or anobject-oriented programming language. The programming language may, forexample, be a compiled or interpreted programming language.

Each such computer program may be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a computer processor. Method steps of the invention may beperformed by a computer processor executing a program tangibly embodiedon a computer-readable medium to perform functions of the invention byoperating on input and generating output. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, the processor receives instructions and data from a read-onlymemory and/or a random access memory. Storage devices suitable fortangibly embodying computer program instructions include, for example,all forms of non-volatile memory, such as semiconductor memory devices,including EPROM, EEPROM, and flash memory devices; magnetic disks suchas internal hard disks and removable disks; magneto-optical disks; andCD-ROMs. Any of the foregoing may be supplemented by, or incorporatedin, specially-designed ASICs (application-specific integrated circuits)or FPGAs (Field-Programmable Gate Arrays). A computer can generally alsoreceive programs and data from a storage medium such as an internal disk(not shown) or a removable disk. These elements will also be found in aconventional desktop or workstation computer as well as other computerssuitable for executing computer programs implementing the methodsdescribed herein, which may be used in conjunction with any digitalprint engine or marking engine, display monitor, or other raster outputdevice capable of producing color or gray scale pixels on paper, film,display screen, or other output medium.

A computer program provides a first set of representations (e.g.,textual representations) of a first set of hyperlinks. In response toselection by a user of one of the first set of hyperlink representations(such as by clicking on or hovering a cursor over the representation),the program displays a second set of representations (e.g., graphicalrepresentations) of a second set of hyperlinks. The user may select oneof the second set of representations, in response to which the programnavigates to the destination of the hyperlink. The second set ofrepresentations may, for example, be logos of companies, and the secondset of hyperlinks may be hyperlinks to the companies' web sites.

For example, referring to FIG. 5A, a web page 500 is shown according toone embodiment of the present invention. The web page 500 includes afirst frame 502 a displaying a first set of textual hyperlinkrepresentations 504 a, and a second frame 502 b displaying the contentsof another web page.

In the embodiment illustrated in FIG. 5A, the first set of hyperlinkrepresentations 504 a includes hypertext 506 a-h. In this example, thehypertext 506 a-h includes text representing categories of news websites. For example, hypertext 506 a (“World News”) represents thecategory of world news web sites, hypertext 506 b (“Business News”)represents the category of business news web sites, and so on. Theparticular number, selection, and categorization of hypertext 506 a-hshown in FIG. 5A is provided merely as an example and does notconstitute a limitation of the present invention.

The hyperlink representations 504 a enable the user to access theunderlying hyperlinks to external websites by hovering over selectingany of the hypertext 506 a-h. The user may, for example, select aparticular link either by clicking on one of the hypertext links 506 a-hor by hovering a mouse cursor over one of the hypertext links 506 a-h.

In response to receiving a selection of one of the hypertext links 506a-h from the user, the web page 500 displays a second set of hyperlinkrepresentations 504 b. In the particular example illustrated in FIG. 5A,the user has clicked on or hovered the mouse cursor over hypertext 506 h(“Stock Research”). In response, the web page 500 has displayed thesecond set of hyperlink representations 504 b, which representhyperlinks within the selected category. In other words, each of thehyperlink representations 508 a-l represents a hyperlink to a stockresearch web site. More specifically, in the embodiment illustrated inFIG. 5A, each of the hyperlink representations 508 a-l is a graphicimage of the logo of the web site that is the destination of thehyperlink. For example, hyperlink representation 508 a is the logo ofwww.bigcharts.com, and the hyperlink representation 508 a acts as a linkto www.bigcharts.com.

Therefore, when the user selects (e.g., clicks on or hovers over) one ofthe second set of hyperlink representations 508 a-l, the web browserdisplays the destination of the selected hyperlink in the frame 502 b.For example, if the user selects hyperlink representation 508 a (i.e.,the logo of www.bigcharts.com), the web browser will navigate to anddisplay the home page of www.bigcharts.com in frame 502 b.

Different sets of hyperlinks are displayed as the user selects (e.g.,clicks on or hovers over) different ones of the first set of hyperlinks506 a-h. For example, as shown in FIG. 5B, when the user selectshyperlink 506 d (“UK News”), the web page 500 displays a set 504 c ofhyperlink representations 510 a-j depicting logos of UK news web sites.If hovering is enabled to activate the first set 504 a of links 506 a-j,the user may quickly view the links in different categories by movingthe mouse cursor over different ones of the first set 504 a of links 506a-h. In a web browser, such a feature may be enabled using AJAXtechnology, through which all of the logos may be pre-downloaded withthe web page 500, and then quickly displayed to the user withoutrequiring additional accesses to the server.

The techniques just described may, for example, be implemented inconjunction with a message board aggregation web site of the kinddisclosed in the patent application entitled, “Message BoardAggregator”, now issued under U.S. Pat. No. 7,529,795.

One advantage of the techniques disclosed herein is that hyperlinkrepresentations (e.g., the hyperlinks 504 b and 504 c) may be displayedto the user essentially instantaneously. Such techniques, therefore,provide the user with a method of scanning through links that is moreintuitive and thus quicker for users than traditional techniques.Furthermore, the use of company logos or other graphical representationsof hyperlinks facilitates the users experience, because it is likelythat the user will already associate the company logo with thecorresponding company name (attached to the hyperlink). The method isalso visually more appealing than commonly used plain text methods.

It is to be understood that although the invention has been describedabove in terms of particular embodiments, the foregoing embodiments areprovided as illustrative only, and do not limit or define the scope ofthe invention. Various other embodiments, including but not limited tothe following, are also within the scope of the claims. For example,elements and components described herein may be further divided intoadditional components or joined together to form fewer components forperforming the same functions. In particular, the functions performed bythe aggregation server 112 shown in FIG. 1 may be further subdividedinto additional components for performing the same functions.

The first set of hyperlinks 504 a may be sorted into categories,sub-categories, and so on, in any manner. Alternatively, they may beunsorted. The hyperlinks that are displayed may be predetermined by theweb page designer, determined by the user, or any combination thereof.The user may, for example, be provided with the ability to set upcategories (and subcategories) comprising favorite website hyperlinks.

Any kind of computer program may implement the techniques disclosedherein. For example, the techniques disclosed herein may be implementedin a web site displayed by a web browser.

The techniques described above may be implemented, for example, inhardware, software, firmware, or any combination thereof. The techniquesdescribed above may be implemented in one or more computer programsexecuting on a programmable computer including a processor, a storagemedium readable by the processor (including, for example, volatile andnon-volatile memory and/or storage elements), at least one input device,and at least one output device. Program code may be applied to inputentered using the input device to perform the functions described and togenerate output. The output may be provided to one or more outputdevices.

Each computer program within the scope of the claims below may beimplemented in any programming language, such as assembly language,machine language, a high-level procedural programming language, or anobject-oriented programming language. The programming language may, forexample, be a compiled or interpreted programming language.

Each such computer program may be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a computer processor. Method steps of the invention may beperformed by a computer processor executing a program tangibly embodiedon a computer-readable medium to perform functions of the invention byoperating on input and generating output. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, the processor receives instructions and data from a read-onlymemory and/or a random access memory. Storage devices suitable fortangibly embodying computer program instructions include, for example,all forms of non-volatile memory, such as semiconductor memory devices,including EPROM, EEPROM, and flash memory devices; magnetic disks suchas internal hard disks and removable disks; magneto-optical disks; andCD-ROMs. Any of the foregoing may be supplemented by, or incorporatedin, specially-designed ASICs (application-specific integrated circuits)or FPGAs (Field-Programmable Gate Arrays). A computer can generally alsoreceive programs and data from a storage medium such as an internal disk(not shown) or a removable disk. These elements will also be found in aconventional desktop or workstation computer as well as other computerssuitable for executing computer programs implementing the methodsdescribed herein, which may be used in conjunction with any digitalprint engine or marking engine, display monitor, or other raster outputdevice capable of producing color or gray scale pixels on paper, film,display screen, or other output medium.

What is claimed is:
 1. A method, comprising: providing a web pageincluding a set of one or more representations of one or more menu itemsand a set of one or more representations of one or more hyperlinks, theweb page configured to: cause display of the set of one or morerepresentations of one or more menu items of the web page without anyimages being used in the display of the set of one or morerepresentations of one or more menu items in connection with the webpage, and with the set of one or more representations of one or morehyperlinks being initially hidden and taking the form of hypertextincluding one or more textual representations of one or more hyperlinks,allow receipt of a first input, in the form of hovering, that indicatesa selection of one of the set of one or more representations of one ormore menu items, the receipt of the first input being implementedwithout Asynchronous-JavaScript-and-XML (AJAX), cause, in response toreceipt of the first input indicating the selection of the one of theset of one or more representations of one or more menu items, display ofthe set of one or more representations of one or more hyperlinks, suchthat the set of one or more representations of one or more hyperlinks isdisplayed in a menu in a same window as the one of the set of one ormore representations of one or more menu items, and at least partiallybelow the one of the set of one or more representations of one or moremenu items, allow receipt of a second input that indicates a selectionof one of the set of one or more representations of one or morehyperlinks, and cause, in response to receipt of the second inputindicating the selection of the one of the set of one or morerepresentations of one or more hyperlinks, navigation to a destinationcorresponding to the one of the set of one or more representations ofone or more hyperlinks, for causing display of at least a portion ofcontent associated with the destination simultaneously with anotherinstance of the set of one or more representations of one or more menuitems, so as to allow review of the another instance of the set of oneor more representations of one or more menu items and review of anotherinstance of the set of one or more representations of one or morehyperlinks while the at least portion of content is simultaneouslydisplayed, for use in causing additional navigation to at least oneadditional destination and display of at least a portion of additionalcontent which is simultaneously displayed with yet another instance ofthe set of one or more representations of one or more menu items; andcausing storage of the web page.
 2. The method of claim 1, wherein theabsence of any images in the display of the set of one or morerepresentations of one or more menu items reduces a download timeassociated with a pre-download of the set of one or more representationsof one or more hyperlinks with the web page.
 3. The method of claim 1,wherein the set of one or more representations of one or more hyperlinksis displayed so as to overlap at least a portion of a content section ofthe web page.
 4. The method of claim 1, wherein use of the one or moretextual representations minimizes an amount of data required topre-download the set of one or more representations of one or morehyperlinks with the web page.
 5. The method of claim 1, wherein theanother instance of the set of one or more representations of one ormore menu items is displayed in a first portion of another web pageassociated with the destination, the at least portion of contentassociated with the destination is displayed in a second portion of theanother web page, and at least part of the first portion including atleast a portion of another instance of the set of one or morerepresentations of one or more hyperlinks overlaps at least part of thesecond portion.
 6. The method of claim 1, wherein a distance betweenmultiple of the set of one or more representations of one or morehyperlinks remains constant before and after the display of the set ofone or more representations of one or more hyperlinks.
 7. The method ofclaim 1, wherein the receipt of the first input is implemented withoutAJAX for improving a speed of the receipt of the first input and thedisplay of the set of one or more representations of one or morehyperlinks.
 8. The method of claim 1, wherein each instance of thereceipt and the display causation is performed without invoking AJAX. 9.The method of claim 1, wherein an entirety of the web page is generatedwithout using Java.
 10. The method of claim 1, wherein the first inputis capable of including the hovering, or clicking.
 11. The method ofclaim 1, wherein the hovering permits a user to more quickly viewdifferent sets of one or more representations of different sets of oneor more hyperlinks, as compared to clicking, by permitting the user tomove a cursor over different ones of the set of one or morerepresentations of one or more menu items.
 12. The method of claim 1,wherein the hovering permits a user to more quickly view and hide theset of one or more representations of one or more hyperlinks, ascompared to clicking, by permitting the user to move a cursor over theone of the set of one or more representations of one or more menu itemsand subsequently move the cursor off of the one of the set of one ormore representations of one or more menu items.
 13. The method of claim1, wherein the hovering permits a user to view and hide different setsof one or more representations of different sets of one or morehyperlinks by permitting the user to move a cursor over different onesof the set of one or more representations of one or more menu items andsubsequently move the cursor off.
 14. The method of claim 1, wherein atleast one of: the set of one or more representations of one or more menuitems includes a set including a single representation of a single menuitem; the web page includes a single web page; the web page is one of aplurality of web pages; the one or more representations of one or morehyperlinks is displayed below and to a side of the one of the set of oneor more representations of one or more menu items; the one of the set ofone or more representations of one or more hyperlinks is displayedimmediately below the one of the one of the set of one or morerepresentations of one or more menu items; the one or morerepresentations of one or more hyperlinks is displayed below the one ofthe set of one or more representations of one or more menu items, by theone or more representations of one or more hyperlinks being displayed ata first level that is below a second level that the one of the set ofone or more representations of one or more menu items is displayed; theone or more representations of one or more hyperlinks is displayed belowthe one of the set of one or more representations of one or more menuitems, by the one or more representations of one or more hyperlinksbeing displayed on a first y-axis plane that is below a second y-axisplane that the one of the set of one or more representations of one ormore menu items is displayed; the one or more representations of one ormore hyperlinks is displayed below the one of the set of one or morerepresentations of one or more menu items, by the one or morerepresentations of one or more hyperlinks being displayed at a firstlocation on an x-axis on a first y-axis plane that is below a secondlocation on the x-axis on a second y-axis plane at which the one of theset of one or more representations of one or more menu items isdisplayed; the at least portion of content is different from the atleast portion of additional content; the at least portion of content isthe same as the at least portion of additional content; the set of oneor more representations of one or more hyperlinks is displayed in themenu in a first frame of the same window, and the one of the set of oneor more representations of one or more menu items is displayed in asecond frame of the same window; the set of one or more representationsof one or more hyperlinks and the one of the set of one or morerepresentations of one or more menu items, are displayed in the sameframe of the same window; the set of one or more representations of oneor more hyperlinks and the one of the set of one or more representationsof one or more menu items, are displayed in the menu; the set of one ormore representations of one or more hyperlinks and the one of the set ofone or more representations of one or more menu items, are displayed indifferent menus; other one or more portions of the web page other thanthe set of representations of one or more menu items include images; theone or more menu items include one or more hyperlinks; other one or moreportions of the web page other than the set of representations of one ormore menu items, including the content, include images; other one ormore portions of the web page other than the set of representations ofone or more menu items, including the set of one or more representationsof one or more hyperlinks, include images; images other than the anyimages are pre-downloaded with the web page; images are pre-downloadedwith the web page for use in the display of the set of representationsof one or more hyperlinks; the second input includes the hovering;additional input other than the first input and the second input,includes the hovering; the hovering results in a visual emphasis; thehovering results in content display; the hovering results in display ofat least a portion of content that was previously hidden; each instanceof the set of one or more representations of one or more menu items isidentical; the another instance of the set of one or morerepresentations of one or more menu items has at least one differencewith respect to the set of one or more representations of one or moremenu items; the another instance of the set of one or morerepresentations of one or more menu items and the set of one or morerepresentations of one or more menu items, are displayed with differentcontent; the yet another instance of the set of one or morerepresentations of one or more menu items, the another instance of theset of one or more representations of one or more menu items, and theset of one or more representations of one or more menu items, are eachdisplayed with different content; the yet another instance of the set ofone or more representations of one or more menu items, the anotherinstance of the set of one or more representations of one or more menuitems, and the set of one or more representations of one or more menuitems, are identical in at least one respect; the yet another instanceof the set of one or more representations of one or more menu items, theanother instance of the set of one or more representations of one ormore menu items, and the set of one or more representations of one ormore menu items, are different in at least one respect; each instance ofthe set of one or more representations of one or more hyperlinks isidentical; the another instance of the set of one or morerepresentations of one or more hyperlinks has at least one differencewith respect to the set of one or more representations of one or morehyperlinks; the another instance of the set of one or morerepresentations of one or more hyperlinks and the set of one or morerepresentations of one or more hyperlinks, are displayed with differentcontent; the web page is configured to cause the navigation by providinga selectable link thereto; the web page is configured to cause thenavigation by allowing use of a selectable link thereto; the destinationincludes another web page; the destination includes another web page ona same website; the set of one or more representations of one or moremenu items and the at least portion of content is simultaneouslydisplayed in separate frames; the set of one or more representations ofone or more hyperlinks are pre-downloaded with the web page by beingdownloaded prior to the first input; the web page is part of a systemincluding a server; the web page is part of a system including a serveron which the web page is stored and from which the web page is served;the web page is part of a system including a server; the web page ispart of a system including a user computer to which the web page isserved and stored; the web page is stored on a user computer; the webpage is stored on a server; or the at least a portion of the contentincludes a text item.
 15. A method, comprising: creating content forpopulating a web page, the web page including a set of one or morerepresentations of one or more menu items and a set of one or morerepresentations of one or more hyperlinks, and configured to: causedisplay of the set of one or more representations of one or more menuitems of the web page, with the set of one or more representations ofone or more hyperlinks being initially hidden, allow receipt of a firstinput, in the form of hovering, that indicates a selection of one of theset of one or more representations of one or more menu items, thereceipt of the first input being implemented withoutAsynchronous-JavaScript-and-XML (AJAX), cause, in response to receipt ofthe first input indicating the selection of the one of the set of one ormore representations of one or more menu items, immediate display of theset of one or more representations of one or more hyperlinks, such thatthe set of one or more representations of one or more hyperlinks isdisplayed in a menu in a same window as the one of the set of one ormore representations of one or more menu items, allow receipt of asecond input that indicates a selection of one of the set of one or morerepresentations of one or more hyperlinks, and cause, in response toreceipt of the second input indicating the selection of the one of theset of one or more representations of one or more hyperlinks, navigationto a destination corresponding to the one of the set of one or morerepresentations of one or more hyperlinks, for causing display of atleast a portion of additional content associated with the destinationsimultaneously with another instance of the set of one or morerepresentations of one or more menu items, so as to allow access to theset of one or more representations of one or more menu items and accessto the set of one or more representations of one or more hyperlinkswhile the at least portion of additional content is simultaneouslydisplayed with the another instance of the set of one or morerepresentations of one or more menu items; and causing storage of theweb page.
 16. The method of claim 15, wherein the set of one or morerepresentations of one or more hyperlinks is displayed so as to overlapat least a portion of a content section of the web page.
 17. The methodof claim 15, wherein the another instance of the set of one or morerepresentations of one or more menu items is displayed in a firstportion of another web page associated with the destination, and the atleast portion of additional content associated with the destination isdisplayed in a second portion of the another web page, and at least partof the first portion including at least a portion of another instance ofthe set of one or more representations of one or more hyperlinksoverlaps at least part of the second portion.
 18. The method of claim15, wherein the receipt of the first input is implemented without AJAXfor improving a speed of the receipt of the first input and the displayof the set of one or more representations of one or more hyperlinks. 19.The method of claim 15, wherein an appearance of letters of the set ofone or more representations of one or more hyperlinks does not change inresponse to user input.
 20. The method of claim 15, wherein the hoveringpermits a user to more quickly view different sets of one or morerepresentations of different sets of one or more hyperlinks, as comparedto clicking, by permitting the user to move a cursor over different onesof the set of one or more representations of one or more menu items. 21.The method of claim 15, wherein the hovering permits a user to morequickly view and hide the set of one or more representations of one ormore hyperlinks, as compared to clicking, by permitting the user to movea cursor over the one of the set of one or more representations of oneor more menu items and subsequently move the cursor off of the one ofthe set of one or more representations of one or more menu items. 22.The method of claim 15, wherein the hovering permits a user to view andhide different sets of one or more representations of different sets ofone or more hyperlinks by permitting the user to move a cursor overdifferent ones of the set of one or more representations of one or moremenu items and subsequently move the cursor off.
 23. A method,comprising: providing content for at least one web page, the at leastone web page including a set of one or more representations of one ormore menu items and a set of one or more representations of one or morehyperlinks, and the at least one web page configured to: cause displayof the set of one or more representations of one or more menu items ofthe at least one web page, without any images being used in the displayof the set of one or more representations of one or more menu items, andwith the set of one or more representations of one or more hyperlinksbeing initially hidden and taking the form of hypertext including one ormore textual representations of one or more hyperlinks, allow receipt ofa first input, in the form of hovering, that indicates a selection ofone of the set of one or more representations of one or more menu items,cause, in response to receipt of the first input indicating theselection of the one of the set of one or more representations of one ormore menu items, display of the set of one or more representations ofone or more hyperlinks, allow receipt of a second input that indicates aselection of one of the set of one or more representations of one ormore hyperlinks, and cause, in response to receipt of the second inputindicating the selection of the one of the set of one or morerepresentations of one or more hyperlinks, display of a destinationcorresponding to the one of the set of one or more representations ofone or more hyperlinks, the destination including at least a portion ofadditional content displayed simultaneously with the set of one or morerepresentations of one or more menu items, so as to allow use of the setof one or more representations of one or more menu items while the atleast portion of additional content is simultaneously displayed with theset of one or more representations of one or more menu items.
 24. Themethod of claim 23, wherein letters of the one or more textualrepresentations do not change in response to particular user input. 25.The method of claim 23, wherein the hovering permits a user to morequickly view different sets of one or more representations of differentsets of one or more hyperlinks, as compared to clicking, by permittingthe user to move a cursor over different ones of the set of one or morerepresentations of one or more menu items.
 26. The method of claim 23,wherein the destination includes at least one other web page.
 27. Themethod of claim 23, wherein the destination includes at least one otherweb page of a website that hosts the at least one web page, where theset of one or more representations of one or more menu items of the webpage and the set of one or more representations of one or more menuitems of the at least one other web page, appear identical despite beingdisplayed with different content.
 28. The method of claim 23, whereinthe hovering permits a user to view and hide different sets of one ormore representations of different sets of one or more hyperlinks bypermitting the user to move a cursor over different ones of the set ofone or more representations of one or more menu items and subsequentlymove the cursor off.
 29. A method, comprising: providing content for aweb page, the web page including web page code, a set of one or morerepresentations of one or more menu items, and a set of one or morerepresentations of one or more hyperlinks; causing, using the web pagecode of the web page, display of the set of one or more representationsof one or more menu items of the web page, without any images being usedin the display of the set of one or more representations of one or moremenu items, and with the set of one or more representations of one ormore hyperlinks being initially hidden and taking the form of hypertextincluding one or more textual representations of one or more hyperlinks;allowing, using the web page code of the web page, receipt of a firstinput that indicates a selection of one of the set of one or morerepresentations of one or more menu items; causing, using the web pagecode of the web page and in response to receipt of the first inputindicating the selection of the one of the set of one or morerepresentations of one or more menu items, display of the set of one ormore representations of one or more hyperlinks; allowing, using the webpage code of the web page, receipt of a second input that indicates aselection of one of the set of one or more representations of one ormore hyperlinks; and causing, using the web page code of the web pageand in response to receipt of the second input indicating the selectionof the one of the set of one or more representations of one or morehyperlinks, display of another web page corresponding to the one of theset of one or more representations of one or more hyperlinks, theanother web page including at least a portion of additional contentsimultaneously with the set of one or more representations of one ormore menu items, so as to allow use of the set of one or morerepresentations of one or more menu items while the at least portion ofadditional content is simultaneously displayed with the set of one ormore representations of one or more menu items.
 30. The method of claim29, wherein hovering permits a user to view and hide different sets ofone or more representations of different sets of one or more hyperlinksby permitting the user to move a cursor over different ones of the setof one or more representations of one or more menu items andsubsequently move the cursor off.